package com.jie;

import cn.hutool.core.lang.tree.TreeNode;
import org.apache.commons.lang3.StringEscapeUtils;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;

class Solution {
    public static void main(String[] args) {
        System.out.println(new Solution().a());
    }

    public int a(){
        try {
            return 1;
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            return 2;
        }
    }
    static List<String> res=new ArrayList<>();
    public List<String> restoreIpAddresses(String s) {
        List<Integer> list=new ArrayList<>();
        dfs(s,0,list);
        return res;
    }
    public synchronized void dfs(String s,int start,List<Integer> list){
        if(start==s.length()){
            if(list.size()==4){
            //拼接ip地址进行返回
            String ip="";
            for(int i=0;i<list.size();i++){
                if(i<list.size()-1){
                ip+=list.get(i)+".";
                }else{
                    ip+=list.get(i);
                }
            }
            res.add(ip);
            }
            return;
        }else{
            if(list.size()>=4){return;}
            for(int j=start;j<s.length()&&j<start+3;j++){
                String str=s.substring(start,j+1);
                int num=Integer.parseInt(str);
                if(str.charAt(0)=='0'&&str.length()>1){break;}
                if(num>=0&&num<=255){
                    //做处理
                    list.add(num);
                    dfs(s,j+1,list);
                    list.remove(list.size()-1);
                }else{
                    break;
                }
            }
        }
    }
}